Prehistoric entity
A prehistoric entity is basically any mob that is native to prehistoric environments. This includes dinosaurs, pterosaurs, mosasaurs, ichtyosaurs etc. These mobs all have a few things in common that vanilla mobs don't, for example a food system, an aging system and genders. On this page you can find out everything about these special features. Food points Prehistoric entities have a unique food system. When looking at this food system there are two terms to keep in mind: food points and max food points. Food points are basically how many food points the prehistoric entity has at a given time, similar to how many colored in "drumsticks" a player has on the food bar. Max food points is not actually the maximum amount of food points the prehistoric entity can have (like the 10 drumsticks are in the case of a player), but if a prehistoric entity has that amount of food points or more, it's AI will stop trying to look for food, which basically makes it so the prehistoric entity will never have to many more food points than max food points at any given time. The prehistoric entity also has a property called average minutes of food, which as the name would suggest, is how many minutes on average the prehistoric entity's food points will go from max to 0. On most prehistoric entities this number is 60 (one hour or three in-game days), but it varies from entity to entity. The way the declining of food points work is that every game tick a randomizer pseudo-randomly picks a random number between 0 and the average minutes of food divided by the max food points, multiplied with 1200 to convert minutes to ticks, and if that number is 1, then it removes a food point. Depending on how many food points the prehistoric entity has, different things will happen to it: * If the food points exceed or are equal to the max food points, it will stop looking for food. This includes hunting prey, eating grass, path finding to and consuming item entities and being hand fed (see "Edible items"). It will also start regenerating it's health, gaining one health (half a heart) every two seconds. * If it has 0 food points, it will start starving, taking one health (half a heart) of damage every four seconds. This will continue either until it dies or it eats something. * If it has -1 food points, it's food points will revert back to it's max food points. This shouldn't happen naturally as the declining of food points stop at 0, but can be done using some kind of NBT editing tool, such as the /entitydata command, where you change the tag "FoodPoints" to -1. Edible items Prehistoric entities have a list of "edible items", i.e. items that the prehistoric entity can eat. On most carnivores, this usually includes items such as steak and porkchop, and on herbivores it's usually such items as grass and leaves. Note that on some prehistoric entities, mostly large ones, this list is empty. If you right click on a prehistoric entity with one of these items in hand, it will consume it, making an eating sound and creating some fitting particle effects, but, more importantly, replenishing some food points. If the item is a food item, it will replenish as much hunger as the food item would do to a player (so say 3 for a raw porkchop and 8 for a cooked beef), and if it is not a food item, it will default to restoring 5 food points. On most prehistoric entities where the edible items list is not empty, they have an AI telling them to look for item entities nearby that match an item in the list, and if it does, it will path find to the item entity and consume it in the same way it would consume an item from your "hand". Genders Prehistoric entities can have one of two genders: male or female. Each gender has an "ID", where 0 is female and 1 is male. As of right now, the gender doesn't affect anything other than the texture of Velociraptors. I will edit this paragraph when there's more to cover. Aging The aging process of prehistoric entities consists of three major components: age, size factor and size, and two lesser ones: baby size and adult age. The age component is essentially how old the prehistoric entity is, measured in seconds. It starts from zero when it spawns and increments by one every second until it dies. The size factor component is a number randomly generated upon spawn, between 0.875 and 1.125, although it can be changed with the /entitydata command to be anything, which allows you to customize your dinosaurs' sizes, making them as big or as small as you want, as this number determines how big the entity will grow (where if it is one, it will grow to become the average size, see the "size" component to the right). The size component is the actual size of the prehistoric entity, where 1 is the average size of an adult. It is based on both the age and the size factor, along with the baby size and the adult age. The formula for calculating the size is as follows: size = age * (size factor - baby size) / adult age + baby size Although keep in mind that this formula will only keep going as long as the following requirements are met: age * (size factor - baby size) / adult age ≤ size factor - baby size So basically, if it's young enough to continue growing, it's size is age / adult age, multiplied by the size factor to give more diversity to the population (different individuals of the same species end up as different sizes when fully grown), but they initially start of as the baby size, which brings us nicely in to our next topic. The baby size, as you probably guessed, is the initial size of the prehistoric entity; the size it spawns as as a baby. If it's 0.5, the baby is half as big as an average adult, if it's 0.1, the baby is one tenth, etc. The adult age is how many seconds old the entity has to be before it stops growing. Usually a multiple of 115200 (32 hours or 96 in-game days) as that is 12 in-game moon cycles; the closest you can get to a "year" in Minecraft. Head position The head position is the approximate position of where the head is. It's mostly used in big dinosaurs, especially sauropods, whose heads are offset by a large amount from what Minecraft considers the "position" of the entity (in between the feet), and is calculated using a simple sin and cos calculation of the rotation of the prehistoric entity. This is used to do stuff like eat leaves, as the head must be inside the leave block's bounding box in order to eat it. This makes for a more convincing eating behavior as if the position had been used instead on something like a Brachiosaurus, the head would be miles away from the block being eaten and it would only be able to eat blocks on the ground, despite the head being 15 meters up in the air. Packs While all prehistoric creatures don't use them, all prehistoric entities have the fundamental properties needed for packs, although they will only execute on a select few "pack animals" such as Velociraptor. Note that despite the name, "packs" also refer to groups of herbivorous animals, even though the technical term is "herds". In Mesozoicraft, "pack" basically means "group of prehistoric animals with coordinated behavior led by a designated leader". How packs are made When a prehistoric entity that is also a pack animal is spawned, it has a one in X chance of being a pack leader. X is a number called chance for pack leader, and it varies depending on what prehistoric entity it is. If the entity becomes a pack leader, it will be assigned a random pack ID, which is a number between -9,223,372,036,854,775,808 and 9,223,372,036,854,775,807. If another prehistoric entity of the same species but which is not currently in a pack then comes along and enters a (3 * width * 20)³ area of the pack leader ("width" is the width of the bounding box of the prehistoric entity), it will then be assigned the same pack ID as the leader got, and it will also get a tag saying who it's leader is. This means that the pack will probably start small, just the pack leader and the other entities spawned with it, but it will continue to grow as they start venturing out, finding more members as they go. There's no limit to how big a pack can grow, but considering every Xth specimen of the species (see above) is a pack leader, the average pack should contain X amount of members (including the leader). How packs behave Packs behave differently depending on what species it is. Most species have the common trait of the pack members following their pack leader, meaning the pack is pretty much always collected within a small area. In the case of most carnivorous pack animals, it's the leader who decides what and when to attack. This means the pack hunts together, bringing down prey a lot more effectively than if each member individually got to decide whether or not to attack prey. This is great against neutral or hostile mobs that will fight back as one member in the pack may not be strong enough to bring down the enemy, but if it's an entire pack, the odds are a lot better. Most carnivorous pack animals also distributes food among their pack members, which essentially means that if one member kills the prey, it will restore the appropriate amount of food points divided by the amount of pack members to each and every pack member. Summoning prehistoric entities using commands When summoning prehistoric entities using the /summon command, there are a few things you need to consider since the command usually defaults to values of 0 on the NBT side of things. First of all, the size factor will be 0 by default, meaning the entity will shrink into literally nothing and die instantly. This can be corrected by changing the "SizeFactor" tag to something other than 0 (1 is the average size factor, so that might be a good candidate). Another thing to consider is food points, which also default to 0. This is bad, because as you can see in the "Food points" section of this page, if a prehistoric entity has 0 food points, it will start starving. As you can see in the same place, if you give it -1 food points, the food points will revert back to it's max food points, so that's probably a good thing to do, although you could give it as many or as few food points as you want. Here's a recommended command to use when summoning in prehistoric entities: /summon mesozoicraft. x y z {SizeFactor:1,FoodPoints:-1} The reason there's "mesozoicraft." in front of the entity name is because mod entities are required to have their mod ID and a dot in front of the mod entity name, although this is bound to change in 1.11http://www.minecraftforum.net/news/60436-snapshot-16w32a-live __FORCETOC__